package com.zhima.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.zhima.entity.OjQuestionAudit;
import com.zhima.enums.QuestionAuditState;
import com.zhima.vo.QuestionAuditVO;
import com.zhima.vo.QuestionPublishDetailVO;
import com.zhima.vo.SimpleQuestionVO;

import java.util.List;

public interface OjQuestionAuditService extends IService<OjQuestionAudit> {
    boolean submitAuditQuestion(Long userId, Long questionId);

    Page<QuestionAuditVO> pageQueryQuestionAudit(Long userId, Long pageNum, Long pageSize, boolean onlyPassing);

    List<SimpleQuestionVO> batchQuerySimpleQuestionByIds(List<Long> questionIds);


    boolean updateAuditState(long questionAuditId, QuestionAuditState questionAuditState);

    QuestionPublishDetailVO queryQuestionDetailById(Long userId, Long questionId);

    boolean cancelSubmitQuestionAudit(Long questionId);

    boolean auditQuestion(Long questionId, String advice);
}
